/*******************************************************************************
 * @file Tracer.h
 * Definition of class CTracer
 * 
 * @package Logging.
 * 
 * @author mk
 * @date 28/12/2008 13:50:21
 * @version 0.1
 ******************************************************************************/

#ifndef __TRACER_H_INCLUDED__
#define __TRACER_H_INCLUDED__

#include <string>
#include "Logger.h"

namespace Logging
{
	class CTracer
	{
	public:
		CTracer(char* aFile, unsigned int aLine, char* aFunc);
		~CTracer();

	private:
		CTracer& operator=(const CTracer& /*aTracer*/);
		CTracer(const CTracer& /*aTracer*/);

#if 0
		class CLocation
		{
		public:
			CLocation(char* aFile, unsigned int aLine);
			std::string ToString() const;

		private:
			std::string m_File;
			unsigned int m_Line;
		};
#endif

		CLocation m_Location;
		std::string m_Func;
	};
}

#endif /* __TRACER_H_INCLUDED__ */